/******************************************************************************
 * @file     usart.h
 * @brief    Bootloader中usart外设相关函数
 * @author   Ruilist
 * @date     2025-08-15
 * @version  V1.0.0
 * @copyright Copyright (c) 2025
 *
 * @note     1 tab = 4 space
 *
 * @par 日志:
 * - V1.0.0 2025-08-15 Ruilist
 *****************************************************************************/

#ifndef __USART_H
#define __USART_H

//******************************** Includes *********************************//

#include "stm32f4xx.h"

//******************************** Includes *********************************//

//******************************** Declaring ********************************//

/**
 * @brief   串口1初始化
 *
 * @param   void
 *
 * @return  void
 *
 */
void USART1_Init( void );

/**
 * @brief  串口发送字节函数，使用USART1，使用阻塞方式
 *
 * @param  USART_TypeDef *USARTx  USART1
 * @param  uint8_t data           数据字节
 *
 * @return  void
 *
 */
void USART_SendChar( USART_TypeDef *USARTx, uint8_t data );

/**
 * @brief  串口接收字节函数，使用USART1，使用阻塞方式
 *
 * @param  USART_TypeDef *USARTx  USART1
 *
 * @return  uint8_t
 * @retval  data   数据字节
 *
 */
uint8_t USART_ReceiveChar( USART_TypeDef *USARTx );

//******************************** Declaring ********************************//

#endif  // End of __USART_H
